package com.googlecode.grima.domain;

import java.math.BigDecimal;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.hibernate.annotations.Type;
 
@Entity
@Table(name="PORTAL_DESCRIPTIVE_ITEM")
public class DescriptiveItem extends com.googlecode.grima.base.Entity {
 
  	private static final long serialVersionUID = -322111448426485787L;
  
    private Descriptive descriptive;
    private Long number;
    private String status;
    private String reference;
    private String description;
    private BigDecimal quantity;
    private String comments;
    private String colors;
    private String sizes;
    
    private String setas;
  	private byte[] imagem;
    private String fotografarTambem;
    private String lookbookCor;
    private String correcoes;
    
    private String action;
    
    @ManyToOne(targetEntity = Descriptive.class, fetch = FetchType.EAGER)
  	@JoinColumn(name = "DESCRIPTIVE_ID")
		public Descriptive getDescriptive() {
    	return descriptive;
    }

		public void setDescriptive(Descriptive descriptive) {
    	this.descriptive = descriptive;
    }

		@Column(name = "STATUS")
		public String getStatus() {
    	return status;
    }

		public void setStatus(String status) {
    	this.status = status;
    }
		
		@Column(name = "COMMENTS")
		public String getComments() {
    	return comments;
    }

		public void setComments(String comments) {
    	this.comments = comments;
    }

		@Column(name = "REFERENCE")
		public String getReference() {
    	return reference;
    }

		public void setReference(String reference) {
    	this.reference = reference;
    }

		@Column(name = "DESCRIPTION")
		public String getDescription() {
    	return description;
    }

		public void setDescription(String description) {
    	this.description = description;
    }

		@Column(name = "QUANTITY")
		public BigDecimal getQuantity() {
    	return quantity;
    }

		public void setQuantity(BigDecimal quantity) {
    	this.quantity = quantity;
    }

		@Column(name = "COLORS")
		public String getColors() {
    	return colors;
    }

		public void setColors(String colors) {
    	this.colors = colors;
    }

		@Column(name = "SIZES")
		public String getSizes() {
    	return sizes;
    }

		public void setSizes(String sizes) {
    	this.sizes = sizes;
    }

		@Column(name = "NUMBER")
		public Long getNumber() {
    	return number;
    }

		public void setNumber(Long number) {
    	this.number = number;
    }

		@Column(name = "SETAS")
		public String getSetas() {
			return setas;
		}

		public void setSetas(String setas) {
			this.setas = setas;
		}

		@Type(type="org.hibernate.type.PrimitiveByteArrayBlobType") 
		@Column(name = "IMAGEM")
		public byte[] getImagem() {
			return imagem;
		}

		public void setImagem(byte[] imagem) {
			this.imagem = imagem;
		}

		@Column(name = "FOTOGRAFAR_TAMBEM")
		public String getFotografarTambem() {
			return fotografarTambem;
		}

		public void setFotografarTambem(String fotografarTambem) {
			this.fotografarTambem = fotografarTambem;
		}

		@Column(name = "LOOKBOOK_COR")
		public String getLookbookCor() {
			return lookbookCor;
		}

		public void setLookbookCor(String lookbookCor) {
			this.lookbookCor = lookbookCor;
		}

		@Column(name = "CORRECOES")
		public String getCorrecoes() {
			return correcoes;
		}

		public void setCorrecoes(String correcoes) {
			this.correcoes = correcoes;
		}

		@Transient
		public String getAction() {
			return action;
		}

		public void setAction(String action) {
			this.action = action;
		}
		
}